Mark Ustel

Row

Row

Row

Empathise

Data Acquisition

Data Preparation

Modelling

Visualisation

Deployment

About

---
title: "CV"
output: 
  flexdashboard::flex_dashboard:
    css: "style.css"
    social: ["menu"]
    source_code: embed
    orientation: rows
    vertical_layout: fill
    theme: 
      version: 4
      bootswatch: minty
---

```{r setup, include=FALSE, echo=FALSE}
knitr::opts_chunk$set(echo = TRUE)

library(DT)
library(tidyr)
library(flexdashboard)
library(leaflet)
library(readxl)
library(crosstalk)
library(ggplot2)
library(plotly)
library(fmsb)
library(viridis)


```

```{r data, include=FALSE, echo=FALSE}

input <- read_excel("input.xlsx") |> mutate(To = replace_na(To, Sys.Date()))

df <- input |> 
  mutate(FromFormat = format(as.Date(input$From), '%b-%Y'),
         ToFormat = format(as.Date(input$To), '%b-%Y'),
         tag = paste('<font size="+2"> <b>', Position, '</b> at', Company, 
                     '</font> </br><p> <font size="-2"> <i>', FromFormat, ' to ',  ToFormat, '</i> </font> </p> <hr>
                     <li>', Desc1, '</li> <li>', Desc2, '</li> <li>', Desc3, '</li> <li>', Desc4, '</li> <li>', Desc5, '</li>'))

shared_df <- SharedData$new(df)

pal <- colorFactor(viridis(3, direction = -1), input$Company)
```


Mark Ustel
=====================================

Row {data-height=200}
-------------------------------------
###
```{r timeline, echo=FALSE}
plot_ly(data = shared_df,
        x = ~From, 
        y = ~rep(0,7), 
        color = ~Company,
        colors = viridis(3, direction = -1),
        type   = 'scatter', 
        mode   = 'markers',
        opacity = 0.85,
        text = ~paste('<b>', Position, '</b> at', Company, '</br> <i> From ', FromFormat, ' to ',  ToFormat, '</i>'),
        marker = list(size = 30)) |>
  highlight(on = "plotly_hover", off = "plotly_doubleclick") |>
    layout(title = list(text = "Work History",
                      x = 0.05,
                      y = 0.9),
           xaxis = list(title = FALSE, 
                      showticklabels = TRUE, 
                      showgrid = TRUE),
           yaxis = list(title = FALSE, 
                      showticklabels = FALSE, 
                      showgrid = FALSE),
           showlegend = FALSE) |>
  config(displayModeBar = FALSE)

```


Row {data-height=500}
-------------------------------------
###
```{r workexperience, echo=FALSE}
datatable(shared_df, escape=FALSE,
          options = list(columnDefs = list(list(visible=FALSE, targets=c(seq(1:16)))),
                         pageLength = 1, lengthChange = FALSE, info = FALSE,
                         style = 'auto',
                         language = list(search = "<i class='glyphicon glyphicon-search'></i>"),
                         searchHighlight = TRUE,
                         headerCallback = JS(
              "function(thead, data, start, end, display){",
              "  $(thead).remove();",
              "}")
                         ) )
```

###
```{r, echo=FALSE}

```

### 
```{r map, echo=FALSE}
leaflet() |>
  addProviderTiles(
    providers$CartoDB.Positron,
    group = "CartoDB",
    options = providerTileOptions(opacity = 0.95)
  ) |>
  addProviderTiles(
    "Stamen.Terrain",
    group = "Terrain",
    options = providerTileOptions(opacity = 0.75)
  ) |>
  addProviderTiles(
    "Stamen.Toner",
    group = "Toner",
    options = providerTileOptions(opacity = 0.5)
  ) |>

  addProviderTiles(
    "Stamen.Watercolor",
    group = "Watercolor",
    options = providerTileOptions(opacity = 0.5)
  ) |>
  # add a layers control
  addLayersControl(
    baseGroups = c("CartoDB", "Terrain", "Toner", "Watercolor"),
    position = "topleft"
  ) |>
  addMarkers(lng=0.102310, lat=51.772938, label="Home") |>
  addCircleMarkers(data = shared_df, lng = ~lon, lat = ~lat, label = ~Company, color = ~pal(Company))
```





Row {data-height=300}
-------------------------------------

### Empathise
```{r 1, echo=FALSE}
skills <- read_excel("input.xlsx", sheet = "Skills") 

radar.fun <- function (data, colour1, colour2){
  radarchart(
  df = data,
  axistype = 0,
  seg = 5,
  pty = 16,
  pcol = colour1,
  plty = 1,
  plwd = 2,
  pfcol = colour2,
  cglty = 3,
  cglwd = 1,
  cglcol = rgb(0,0,0,0.25),
  centerzero = TRUE,
  vlcex = 1.2
)
}

col1 <- c(rgb(1,0.4,0.4,0.95), rgb(1,0.6,0.2,0.95), rgb(0.8,0.8,0,0.95), rgb(0,0.8,0.4,0.95), rgb(0.2,0.6,1,0.95), rgb(0.4,0.4,1,0.95), rgb(0.7,0.4,1,0.95))
col2 <- c(rgb(1,0.4,0.4,0.5),rgb(1,0.6,0.2,0.5), rgb(0.8,0.8,0,0.5), rgb(0,0.8,0.4,0.5), rgb(0.2,0.6,1,0.5), rgb(0.4,0.4,1,0.5), rgb(0.7,0.4,1,0.5))

i <- 1
radar.fun(data = skills[,(((i-1)*5)+1):(((i-1)*5)+5)], colour1 = col1[i], colour2 = col2[i])
```

### Data Acquisition
```{r 2, echo=FALSE}
i <- i+1
radar.fun(data = skills[,(((i-1)*5)+1):(((i-1)*5)+5)], colour1 = col1[i], colour2 = col2[i])
```

### Data Preparation
```{r 3, echo=FALSE}
i <- i+1
radar.fun(data = skills[,(((i-1)*5)+1):(((i-1)*5)+5)], colour1 = col1[i], colour2 = col2[i])
```

### Modelling
```{r 4, echo=FALSE}
i <- i+1
radar.fun(data = skills[,(((i-1)*5)+1):(((i-1)*5)+5)], colour1 = col1[i], colour2 = col2[i])
```

### Visualisation
```{r 6, echo=FALSE}
i <- i+2
radar.fun(data = skills[,(((i-1)*5)+1):(((i-1)*5)+5)], colour1 = col1[i], colour2 = col2[i])
```

### Deployment
```{r 7, echo=FALSE}
i <- i+1
radar.fun(data = skills[,(((i-1)*5)+1):(((i-1)*5)+5)], colour1 = col1[i], colour2 = col2[i])
```



About
=====================================